package dancetiktokenumsmymongo

const (
	DanceChannelRoleEnumsSexMan   = 1 // 男
	DanceChannelRoleEnumsSexWoMan = 2 //女

	DanceChannelRoleEnumsIsVip    = 1 // 是vip
	DanceChannelRoleEnumsNotIsVip = 2 //不是vip

	DanceChannelRoleEnumsLevelOne   = 1 // 1级
	DanceChannelRoleEnumsLevelTwo   = 2 //2级别
	DanceChannelRoleEnumsLevelThree = 3 //3级别
)

type DanceChannelRoleEnums struct {
}

var DanceChannelRoleEnumsObject DanceChannelRoleEnums

func (d DanceChannelRoleEnums) SexType() []int {
	return []int{
		DanceChannelRoleEnumsSexMan,
		DanceChannelRoleEnumsSexWoMan,
	}
}
func (d DanceChannelRoleEnums) SexMap() map[int]string {
	m := make(map[int]string)
	for _, s := range d.SexType() {
		m[s] = d.SexTypeString(s)
	}
	return m
}
func (d DanceChannelRoleEnums) SexTypeString(tag int) string {
	switch tag {
	case DanceChannelRoleEnumsSexMan:
		return "男"
	case DanceChannelRoleEnumsSexWoMan:
		return "女"
	default:
		return "其他"
	}
}

func (d DanceChannelRoleEnums) IsVipType() []int {
	return []int{
		DanceChannelRoleEnumsIsVip,
		DanceChannelRoleEnumsNotIsVip,
	}
}
func (d DanceChannelRoleEnums) IsVipMap() map[int]string {
	m := make(map[int]string)
	for _, s := range d.IsVipType() {
		m[s] = d.IsVipTypeString(s)
	}
	return m
}
func (d DanceChannelRoleEnums) IsVipTypeString(tag int) string {
	switch tag {
	case DanceChannelRoleEnumsIsVip:
		return "vip"
	case DanceChannelRoleEnumsNotIsVip:
		return "普通用户"
	default:
		return "其他"
	}
}

func (d DanceChannelRoleEnums) LevelType() []int {
	return []int{
		DanceChannelRoleEnumsLevelOne,
		DanceChannelRoleEnumsLevelTwo,
		DanceChannelRoleEnumsLevelThree,
	}
}
func (d DanceChannelRoleEnums) LevelMap() map[int]string {
	m := make(map[int]string)
	for _, s := range d.LevelType() {
		m[s] = d.LevelTypeString(s)
	}
	return m
}
func (d DanceChannelRoleEnums) LevelTypeString(tag int) string {
	switch tag {
	case DanceChannelRoleEnumsLevelOne:
		return "一级"
	case DanceChannelRoleEnumsLevelTwo:
		return "二级"
	case DanceChannelRoleEnumsLevelThree:
		return "三级"
	default:
		return "其他"
	}
}
